home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 7 / Amiga Format AFCD07 (Dec 1996, Issue 91).iso / serious / shareware / programming / emacs-complete / fsf / emacs / src / m / sun2.h < prev    next >
C/C++ Source or Header  |  1993-12-22  |  3KB  |  105 lines

  1. /* machine description file for Sun 68000's OPERATING SYSTEM version 2.
  2.   Note that "sun2.h" refers to the operating system version, not the
  3.   CPU model number.  See the MACHINES file for details.
  4.    Copyright (C) 1985, 1986 Free Software Foundation, Inc.
  5.  
  6. This file is part of GNU Emacs.
  7.  
  8. GNU Emacs is free software; you can redistribute it and/or modify
  9. it under the terms of the GNU General Public License as published by
  10. the Free Software Foundation; either version 2, or (at your option)
  11. any later version.
  12.  
  13. GNU Emacs is distributed in the hope that it will be useful,
  14. but WITHOUT ANY WARRANTY; without even the implied warranty of
  15. MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  16. GNU General Public License for more details.
  17.  
  18. You should have received a copy of the GNU General Public License
  19. along with GNU Emacs; see the file COPYING.  If not, write to
  20. the Free Software Foundation, 675 Mass Ave, Cambridge, MA 02139, USA.  */
  21.  
  22.  
  23. /* The following line tells the configuration script what sort of 
  24.    operating system this machine is likely to run.
  25.    USUAL-OPSYS="note"
  26.  
  27. NOTE-START
  28. Sun 1, 2 and 3 (-machine=sun1, -machine=sun2, -machine=sun3;
  29.                 -opsystem=bsd4-2 or -opsystem=sunos4)
  30.  
  31.   Whether you should use sun1, sun2 or sun3 depends on the
  32.            VERSION OF THE OPERATING SYSTEM
  33.   you have.  There are three machine types for different versions of
  34.   SunOS.  All are derived from Berkeley 4.2, meaning that you should
  35.   use -opsystem=bsd4-2.  Emacs 17 has run on all of them.  You will
  36.   need to use sun3 on Sun 2's running SunOS release 3.
  37.  
  38.   For SunOS release 4 on a Sun 3, use -machine=sun3 and
  39.   -opsystem=sunos4.  See the file share-lib/SUNBUG for how to solve
  40.   problems caused by bugs in the "export" version of SunOS 4.
  41. NOTE-END  */
  42.  
  43. /* The following three symbols give information on
  44.  the size of various data types.  */
  45.  
  46. #define SHORTBITS 16        /* Number of bits in a short */
  47.  
  48. #define INTBITS 32        /* Number of bits in an int */
  49.  
  50. #define LONGBITS 32        /* Number of bits in a long */
  51.  
  52. /* 68000 has lowest-numbered byte as most significant */
  53.  
  54. #define BIG_ENDIAN
  55.  
  56. /* Say this machine is a 68000 */
  57.  
  58. #ifndef m68000
  59. #define m68000
  60. #endif
  61.  
  62. /* Use type int rather than a union, to represent Lisp_Object */
  63.  
  64. #define NO_UNION_TYPE
  65.  
  66. /* Sun can't write competent compilers */
  67. #define COMPILER_REGISTER_BUG
  68.  
  69. /* XINT must explicitly sign-extend */
  70.  
  71. #define EXPLICIT_SIGN_EXTEND
  72.  
  73. /* Data type of load average, as read out of kmem.  */
  74.  
  75. #define LOAD_AVE_TYPE long
  76.  
  77. /* Convert that into an integer that is 100 for a load average of 1.0  */
  78.  
  79. #define LOAD_AVE_CVT(x) (int) (((double) (x)) * 100.0 / FSCALE)
  80.  
  81. /* Say that this is a Sun 2; must check for and maybe reinitialize
  82.    the "sky" board.  */
  83.  
  84. #define sun2
  85.  
  86. /* Must use the system's termcap.  It does special things.  */
  87.  
  88. #define LIBS_TERMCAP -ltermcap
  89.  
  90. /* Mask for address bits within a memory segment */
  91.  
  92. #define SEGMENT_MASK (SEGSIZ - 1)
  93.  
  94. /* Arrange to link with sun windows, if requested.  */
  95. /* For details on emacstool and sunfns, see etc/SUN-SUPPORT */
  96. /* These programs require Sun UNIX 4.2 Release 3.2 or greater */
  97.  
  98. #ifdef HAVE_SUN_WINDOWS
  99. #define OTHER_FILES  ${libsrc}emacstool
  100. #define LIBS_MACHINE -lsuntool -lsunwindow -lpixrect
  101. #define OBJECTS_MACHINE sunfns.o
  102. #define SYMS_MACHINE syms_of_sunfns ()
  103. #define PURESIZE 132000
  104. #endif
  105.